Page({
  data: {
     user:{
         name:'lisi'
     }
  },
  /////////////////追加方式操作字段///////////////////////
   //新增user字段
  myClick(){
    this.setData({
        //新增age字段
        'user.age':28,
        'user.id':100
    })
  },

     //修改user字段值
  myClick2(){
    this.setData({
        'user.name':'zhaoliu',
        'user.age':30,
        'user.id':200
    })
  },
 /////////////////ES6方式操作字段///////////////////////
   //通过SE6展开运算符处理，新增字段
  //通过SE6展开运算符处理，后面的属性会覆盖前面的属性
  //const user是一个新对象，一个新的引用地址，只是潜拷贝
  myClick3(){
    const user={
        //...引用data里面的数据赋值给const user
        ...this.data.user,
        //新增字段name，age
        name:'zhaowu',
        age:70
    }
    this.setData({
        //常规写法user:user，key和value名称一致，可以写一个
        user
    })
  },
  //通过SE6展开运算符处理，修改字段值
  myClick4(){
        const user2={
            ...this.data.user,
            name:'历史',
            age:50   
        }
        this.setData({
            user:user2
        })
  },
 /////////////////Object.assign方式操作字段///////////////////////
  //Object.assign，合并对象操作字段，后面的字段覆盖前面的字段
  myClick5(){
      //追加字段
    const user2=Object.assign(this.data.user,{name:'wangwu'},{age:40})
    this.setData({
        user:user2
    })
  },
   /////////////////删除字段///////////////////////
   //删除对象字段
   myClick6(){
       //删除user的name字段
        delete  this.data.user.name
        this.setData({
            //重新把删除name后的user对象赋值一下
            user:this.data.user
        })
   },
   //删除多个对象字段
   myClick7(){
       //rest是删除字段后的对象
       const {name,age,...rest}=this.data.user
       this.setData({
           user:rest
       })

   }
   

})